データを操作するイメージを身につけよう : 単一の行や列に対する操作編 – 今日からはじめるAlteryx再入門アドベントカレンダー
こんにちは、ソリューション部・新納(にいの)です。
当エントリは2020年アドベントカレンダー『今日からはじめるAlteryx再入門』の02日目のエントリです。
このアドベントカレンダーの企画は、Developers.IOにてAlteryxの情報をお届けしてきたメンバーによるAlteryxを1から学べるシリーズになっています。Alteryx触ってみたい!という方の入門記事として、Alteryx使っているけど改めて基礎から学びたい!という方の再入門記事としてご活用いただければ幸いです。
2日目の今日は「データを操作するイメージを身につけよう : 単一の行や列に対する操作編」をお届けします。
データを操作するってどんな感じ?
アドベントカレンダー1日目の記事でAlteryxの概要がつかめたら、早速データを操作していきましょう!でも、そもそもどうしてデータの操作や加工が必要なのでしょうか。それはデータを分析できるように体裁を整えたり計算などの処理をするためです。Alteryxで扱えるのは横方向(行)に項目が、縦方向(列)にデータが格納されたテーブル形式のデータです。(以下のような形式です)
ID | 従業員名 | 種別 |
---|---|---|
1 | 彩木あかり | 人間 |
2 | 花咲ひさき | 人間 |
3 | くらにゃん | 猫 |
ここまで聞いて「あたりまえやん!」と思われる方も多くいらっしゃるかもしれませんが、実際に処理対象となるデータはこんな形になってくれていることは無いでしょう。この記事をご覧の皆さんが画面の前でうんうんと頷いてくれているのが目に浮かびます。本当に大変ですよね……本当に……そんなデータを加工して分析しやすいようにするのもAlteryxが得意とするところです。
Alteryxで操作するなら
まずはAlteryxで単一の行や列に対する操作をやってみましょう。例として使用するのは奈良県が公開する以下のオープンデータです。
- 令和2年度県民アンケート調査(速報)結果 属性別集計表 (http://www.pref.nara.jp/15126.htm)※2020年12月1日取得
- 「現在の暮らし向きの実感」のアンケート結果を使用しています
主に使用するのは以下のツールです。
列のデータ型や名前を変えるならセレクトツール
不要な列を列をまるごと消したり列名を変えたくなったりなど、列に対しての変更をかけたいときはセレクトツールを使います。
できることは以下の通り。
- データ型の変更
- データサイズの変更
- 項目名称の変更
- 項目の並び替え
- 項目の除外
- 項目の説明の追加
例として、奈良県の県民アンケート調査データを読み込んだところ、何もデータが入っていない列がありますね。Alteryxではデータのない箇所を読み込むとF1
のような列名が自動生成されますが、これではパッとみてどんな項目が入っているのかわかりません。
このような場合、セレクトツールが役に立ちます。不要な列はチェックボックスを外し、列名を変更したい場合は「名前の変更」欄に新しい名前を入れるだけです。補足説明が必要な部分には「説明」欄を使えますし、データ型を変更することも可能です。(データ型って何?という方はこちらのブログをご参照ください)
ワークフローを実行するとこんな感じになります。
一番下にある*Unknown
というチェックボックスは、インプットデータに新しい列が追加されたり削除されたりしたときに力を発揮します。チェックを入れていない場合、後からインプットデータの列が増減したとしてもセレクトツールが変化に対応してくれなくなりますので、特にこだわりがなければチェックを入れておきましょう。チェックボックスを入れる・入れないの動作の違いについては以下エントリをご参照ください。
参考情報
条件に従ってデータをフィルタしたいならフィルタツール
条件に基づいて行をフィルタしたいときはフィルタツールを使います。条件に合致するものはT(True)アンカーに、合致しないものはF(False)アンカーに出力されます。
例えば、以下のように行にNull値が入っているけど、不要なので取り除きたいといったケースにはフィルタツールが役立ちます。
基本フィルターで該当の項目を選択し、Nullではないものを取り除くように設定します。カスタムフィルターでは関数を使った条件の設定も可能です。どんな関数が使えるかは「fx」ボタンから確認できます。
結果ウィンドウで確認すると、TアンカーではNullの行が取り除かれたデータが、FではNullの行が確認できます。
参考情報
関数でデータ整形できちゃうフォーミュラツール
関数や演算子を使ってデータを計算させたり、文字列を追加させるなどの操作にはフォーミュラツールが便利です。
一例として、大属性の値をもとにして中属性にも「県全体」という文字を入れてみましょう。
この場合は以下のようにIF文を記述して実現可能です。
IF [大属性] = "県 全 体" THEN "県全体" ELSE [中属性] ENDIF
また、関数を使わないまでも数値を計算したい場合にもフォーミュラツールが役立ちます。例えば、全体の人数に対してアンケートに「満足している」と答えた割合が知りたい場合…
「満足している」と答えた人数を全体の人数で割り算する、といった計算も可能です。
フォーミュラツールで使用可能な関数は以下のシリーズにまとめられていますのであわせてご参照ください。
参考情報
データを並べ替えたいならソートツール
ソートツールとはその名の通り、データを昇順または降順にソートするツールです。
前項で算出した、奈良県での暮らしに満足している度合いを降順にソートしてみます。
様々な属性のうち、30代の方が一番満足していると答えた割合が大きいようです。
文字列のソートを行う場合、「辞書順を使用」にチェックを入れると各言語のアルファベット順にソートされます。
参考方法
まとめ
Alteryxを使って単一の行や列に対する操作をしてみるの巻でした。本日取り上げたツールはかなりの高頻度で使用するものですので、基本を押さえておきましょう!明日は「データを操作するイメージを身につけよう : 集約系の処理編」をお届けする予定です。